package org.blog.dao;

import java.util.List;

import org.apache.ibatis.annotations.Param;
import org.blog.model.ModelComment;

public interface CommentDao {

	/**
	 * 用户添加评论
	 * 
	 * @param t
	 */
	public void addUserComment(ModelComment t);

	/**
	 * 用户删除评论
	 * 
	 * @param id
	 * @param username
	 */
	public void deleteUserComment(ModelComment t);

	/**
	 * 管理员删除评论
	 * 
	 * @param t
	 */
	public void deleteAdminComment(ModelComment t);

	/**
	 * 用户修改评论
	 * 
	 * @param id
	 * @param content
	 */
	public void modifyUserComment(ModelComment t);

	/**
	 * 获取某一评论
	 * 
	 * @param id
	 * @return
	 */
	public ModelComment getComment(Integer id);

	/**
	 * 获取用户评论列表
	 * 
	 * @param username
	 * @return
	 */
	public List<ModelComment> getUserCommentList(
			@Param("username") String username, @Param("start") int start,
			@Param("end") int end);

	/**
	 * 获取某篇文章的评论
	 * 
	 * @param articleId
	 * @return
	 */
	public List<ModelComment> getArticleCommentList(Integer articleId);

	/**
	 * 获取所有评论的列表
	 * 
	 * @param start
	 * @param end
	 * @return
	 */
	public List<ModelComment> getAdminCommentList(@Param("start") int start,
			@Param("end") int end);
}
